import axios from 'axios'
import { ElMessage } from 'element-plus';
import router from "@/router"
let server = axios.create({
    baseURL:"http://localhost:8080/",
    timeout:3000
});//创建axios对象
//请求拦截占位
server.interceptors.request.use(config=>{
    //在请求前可以修改配置
    //比如统一携带令牌（token）
    if(config.url!="submitLogin"){
        config.headers.token = localStorage.getItem("token");
    }
    return config;
});
let msg = {
    "ERR_NETWORK" : "系统网络异常，请稍后再试。",
    "ECONNABORTED" : "服务器正在重启，请稍后再试。",
    "ERR_BAD_RESPONSE" : "系统异常，请联系客服。"
}
//响应处理
server.interceptors.response.use(resp=>{
    if(resp && resp.status==200 && resp.data.code!=200){
        if(resp.data.code==401){
            router.push("/login")
        }
        ElMessage.error(resp.data.msg);
        return Promise.reject(resp.data);
    }
    //处理响应数据
    return resp.data;
},error=>{
    ElMessage.error(msg[error.code]);
    return Promise.reject(error);
});
export default server;